package cate.game.play.support;

import cate.common.table.attr.AttrExcel;
import cate.common.table.camp.CampAttrExcel;
import cate.common.table.dynins.DynInstanceExcel;
import cate.common.table.fight.buff.BuffExcel;
import cate.common.table.fight.destiny.DestinyExcel;
import cate.common.table.fight.scene.FightSceneExcel;
import cate.common.table.fight.skill.SkillExcel;
import cate.common.table.hallow.HallowExcel;
import cate.common.table.ins.InstanceExcel;
import cate.common.table.item.ItemExcel;
import cate.common.table.item.awakenfairy.AwakenFairyExcel;
import cate.common.table.item.equip.EquipExcel;
import cate.common.table.item.fairy.FairyExcel;
import cate.common.table.item.furniture.FurnitureExcel;
import cate.common.table.item.gem.GemExcel;
import cate.common.table.item.hero.HeroExcel;
import cate.common.table.item.inscription.InscriptionExcel;
import cate.common.table.item.kitchenware.KitchenwareExcel;
import cate.common.table.item.rune.RuneExcel;
import cate.common.table.item.spice.SpiceExcel;
import cate.common.table.item.staruptask.StarUpTaskExcel;
import cate.common.table.item.yoke.YokeExcel;
import cate.common.table.res.achievement.AchievementExcel;
import cate.common.table.res.hero.back.HeroBackExcel;
import cate.game.GameBody;
import cate.game.event.GameEventDispatcher;
import cate.game.fight.hallow.BattleHallowBuilder;
import cate.game.fight.hero.BattleHeroBuilder;
import cate.game.fight.pet.BattlePetBuilder;

public class PlayBuildContext4Game implements PlayBuildContext {

    private GameBody game;

    public PlayBuildContext4Game(GameBody game) {
        this.game = game;
    }

    @Override
    public ItemExcel itemExcel() {
        return game.table.item;
    }

    @Override
    public FurnitureExcel furnitureExcel() {
        return game.table.furniture;
    }

    @Override
    public HeroExcel heroExcel() {
        return game.table.hero;
    }

    @Override
    public EquipExcel equipExcel() {
        return game.table.equip;
    }

    @Override
    public SpiceExcel spiceExcel() {
        return game.table.spice;
    }

    @Override
    public DynInstanceExcel dynInsExcel() {
        return game.table.dynIns;
    }

    @Override
    public InstanceExcel insExcel() {
        return game.table.ins;
    }

    @Override
    public FairyExcel fairyExcel() {
        return game.table.fairy;
    }

    @Override
    public RuneExcel runeExcel() {
        return game.table.rune;
    }

    @Override
    public SkillExcel skillExcel() {
        return game.table.skill;
    }

    @Override
    public BuffExcel buffExcel() {
        return game.table.buff;
    }

    @Override
    public CampAttrExcel campAttrExcel() {
        return game.table.campAttr;
    }

    @Override
    public FightSceneExcel sceneExcel() {
        return game.table.fightScene;
    }

    @Override
    public DestinyExcel destinyExcel() {
        return game.table.destiny;
    }

    @Override
    public HeroBackExcel heroBackExcel() {
        return game.table.heroBack;
    }

    @Override
    public StarUpTaskExcel starUpTaskExcel() {
        return game.table.starUpTask;
    }

    @Override
    public GemExcel gemExcel() {
        return game.table.gem;
    }

    @Override
    public HallowExcel hallowExcel() {
        return game.table.hallow;
    }

    @Override
    public AttrExcel attrExcel() {
        return game.table.attr;
    }

    @Override
    public GameEventDispatcher gameEventDispatcher() {
        return game.eventDispatcher;
    }

    @Override
    public BattleHallowBuilder hallowBuilder() {
        return game.fight.hallow;
    }

    @Override
    public BattlePetBuilder petBuilder() {
        return game.fight.pet;
    }

    @Override
    public BattleHeroBuilder heroBuilder() {
        return game.fight.hero;
    }

    @Override
    public InscriptionExcel inscriptionExcel() {
        return game.table.inscription;
    }

    @Override
    public YokeExcel yokeExcel() {
        return game.table.yoke;
    }

    @Override
    public AchievementExcel achievementExcel() {
        return game.table.achievement;
    }

    @Override
    public AwakenFairyExcel awakenFairyExcel() {
        return game.table.awakenFairy;
    }

    @Override
    public KitchenwareExcel kitchenwareExcel() {
        return game.table.kitchenware;
    }


}
